home *** CD-ROM | disk | FTP | other *** search
/ Danny Amor's Online Library / Danny Amor's Online Library - Volume 1.iso / html / faqs / alt / windows.cde < prev    next >
Internet Message Format  |  1994-10-18  |  66KB

  1. Path: bloom-beacon.mit.edu!hookup!swrinde!cs.utexas.edu!convex!news.duke.edu!eff!blanket.mitre.org!linus.mitre.org!newsflash.mitre.org!mitre.org!cap
  2. From: cap@mitre.org (Craig Prall)
  3. Newsgroups: alt.windows.cde,alt.answers,comp.answers,news.answers
  4. Subject: Common Desktop Environment (CDE) Frequently Asked Questions
  5. Followup-To: alt.windows.cde
  6. Date: 13 Oct 1994 15:35:07 GMT
  7. Organization: The MITRE Corporation
  8. Lines: 1314
  9. Approved: news-answers-request@MIT.EDU
  10. Distribution: world
  11. Expires: 11 Nov 1994 23:00:00 GMT
  12. Message-ID: <37jk3b$kv2@newsflash.mitre.org>
  13. Reply-To: cap@mitre.org
  14. NNTP-Posting-Host: future.mitre.org
  15. Summary: Answers to common questions about CDE and the Common Open 
  16.     Software Environment (COSE) as discussed in alt.windows.cde
  17.     newsgroup. Read this before posting your question to ....
  18. Keywords: CDE, COSE, desktop, user environment
  19. Xref: bloom-beacon.mit.edu alt.windows.cde:106 alt.answers:4986 comp.answers:7777 news.answers:27361
  20.  
  21. Archive-name: cde-cose-faq
  22. Last-modified: 1994/10/07
  23. Version: 1.2
  24. Posting-Frequency: monthly
  25.  
  26.  
  27. 1.0    WHERE AM I?
  28.  
  29. 1.1    What is alt.windows.cde?
  30.  
  31. This newsgroup is dedicated to the exchange of news and information
  32. about the Common Desktop Environment (CDE) being created as a part of
  33. the Common Open Software Environment (COSE) for UNIX-based
  34. workstations.  It is *not* for Microsoft Windows questions.  Those
  35. belong in comp.os.ms-windows.apps or some such newsgroup.
  36.  
  37. 1.2    What is this posting?
  38.  
  39. This is the alt.windows.cde FAQ list for October 7, 1994.
  40.  
  41. When the alt.windows.cde newsgroup was formed, I thought that there 
  42. would be constant updates posted here by the COSE vendors.  This 
  43. hasn't happened.  This is somewhat understandable; they are extremely 
  44. busy right now.  Also, it was pointed out to me by one of the CDE 
  45. developers that with four companies involved, it is hard to remember 
  46. what is and is not public knowledge, so it is better to not say 
  47. anything lest one company give away another's trade secret.  What this 
  48. is then is the author's, coworker's, and contributor's current 
  49. understanding of the CDE and COSE in general.  Although this newsgroup 
  50. is about the CDE specifically, there is no COSE newsgroup (yet), so 
  51. this is a logical place to describe the other COSE technology areas, 
  52. too.  Much of the text in this FAQ is (currently) based on a paper and 
  53. briefing done in November of 1993 so if it has the feel of a tutorial 
  54. rather than a traditional FAQ, that is why.
  55.  
  56. If you have questions (and even better - answers/additions) you would
  57. like to see added to this list, send e-mail to: cap@mitre.org
  58.  
  59. 1.3    Legal Stuff
  60.  
  61. This FAQ list should not be construed as an official "policy" 
  62. statement of my employer, the MITRE corporation.  Also, all statements 
  63. herein should not be regarded as undeniable facts.  (i.e., You can't 
  64. sue me or MITRE if they are wrong.) For one thing, several of these 
  65. "facts" have changed dramatically since the (bulk of) text below was 
  66. orginally written in November, 1993.  Although I have updated them to 
  67. the best of my knowledge at this time, I can almost guarantee some of 
  68. them will change again.  Since it isn't my full time job to update 
  69. this list, it won't be current at all times.
  70.  
  71. Also, there are a lot of trademarked names in this FAQ list.  Those
  72. trademarks belong to their respective trademark holders.
  73.  
  74. 1.4    What's in the FAQ?
  75.  
  76. The sections and questions below are:
  77.  
  78.   2.0     COSE OVERVIEW
  79.   2.1    In general terms, what is COSE and why do we need it?
  80. * 2.2    How does COSE work / What is the "new" OSF?
  81. * 2.3    How does COSE fit into the existing standards processes?
  82.  
  83.   3.0    DETAILS ABOUT COSE
  84.   3.1    What all does the COSE process encompass?
  85. * 3.2    What are the Common UNIX APIs?
  86.   3.3    What is going on in graphics?
  87.   3.4     What is COSE doing about multimedia?
  88.   3.5     What is COSE doing in regards to objects?
  89.   3.6     What is COSE doing in the area of distributed computing?
  90.   3.7     What is COSE doing about system management?
  91.   3.8     What is the Public Windows Interface (PWI)/WABI?
  92.   3.9     What is COSE doing about Federated Naming?
  93.   3.10     What is COSE doing about Data Management?
  94.   3.11    How will the COSE technologies be packaged?
  95.  
  96. * 4.0    DETAILS ABOUT THE COMMON DESKTOP ENVIRONMENT (CDE)
  97.   4.1    What is in the CDE?
  98.   4.1.1    What is the CDE desktop?
  99.   4.1.2    What is the Front Panel? 
  100.   4.1.3    What is the File Manager?
  101.   4.1.4    What is the Application Manager?
  102.   4.1.5    What is Application and File Action Binding/Typing?
  103.   4.1.6    What is Session Management?
  104.   4.1.7    How do I program with the CDE?
  105.   4.1.8    How does CDE do drag-and-drop?
  106.   4.1.9    How does CDE support remote application execution?
  107.   4.1.10 How does CDE support inter-application communication?
  108.   4.1.11 What utilities are included?  
  109.   4.1.12 What applications are included?
  110.   4.1.13 What is the CDE Print Server?
  111.   4.1.14 What is the Help System?  
  112.   4.1.15 Any other features?
  113. * 4.2    How do I get the CDE software for my workstation?
  114.   4.3    What do I get when I buy it?
  115.   4.4    Is CDE safe/reliable/stable?
  116.   4.5     Is an object-oriented GUI toolkit like Fresco in the works for
  117.           CDE?
  118.   4.6    How does the CDE relate to Motif 2.0?
  119.   4.7    Can I license the CDE source code so that I can port it?
  120.  
  121. * Indicates new or significantly changed sections since the last
  122.   revision.
  123.  
  124. 1.5    What's not in the FAQ; what needs to be added?
  125.  
  126. 1.5.1    Actual programming experiences and tidbits
  127. Dos and don'ts of programming with CDE and other COSE (Spec 1170) 
  128. APIs.
  129.  
  130. 1.5.2    Windowing Korn Shell (dtksh) example code
  131. dtksh examples and fragments to be tried and reused.
  132.  
  133. 1.5.3    Detailed questions about particular aspects of CDE and 
  134. the applications that come with the CDE.
  135.  
  136. 2.0     COSE OVERVIEW
  137.  
  138. 2.1    In general terms, what is COSE and why do we need it?
  139.  
  140. UNIX has long suffered from a lack of standardization across 
  141. platforms.  The lack of standard application programming interfaces 
  142. (APIs) force independent software vendors (ISVs) to spend up to fifty 
  143. percent of all development funds on maintenance of separate code and 
  144. testing for the many UNIX varieties.  Absence of standardization of 
  145. user interfaces causes significant user confusion and increased 
  146. training costs and requirements.  Finally, the lack of standard 
  147. administrative procedures leads to additional training costs as 
  148. administrators move between the various UNIX platforms.  All of these 
  149. factors have contributed to UNIX's reputation as a powerful, but 
  150. arcane operating system.  Over the years, a number of coalitions have 
  151. formed to attempt to unify the various UNIX interfaces into a single 
  152. broadly accepted, broadly available user environment.  The newest of 
  153. these coalitions is COSE.
  154.  
  155. COSE was formed by a group of companies on March 17, 1993.  The
  156. companies that formed COSE are:
  157.  
  158. -    Hewlett-Packard Company
  159. -    IBM, Corp.
  160. -    The Santa Cruz Operation, Inc.
  161. -    SunSoft, Inc (SUN Microsystems)
  162. -    Univel (Novell)
  163. -    UNIX Systems Laboratories, Inc (Now part of Novell)
  164.  
  165. Since the initial announcement, other vendors have agreed to support 
  166. COSE. From this point forward, the term "COSE" will be used to refer 
  167. to the collective membership of the group. 
  168.  
  169. While the COSE vendors purport that COSE is merely a "process", that
  170. COSE is simply acting as a "catalyst" to accelerate the standards, the
  171. reality is that in all likelyhood, COSE represents the way that
  172. standards for the future UNIX environment will be created. COSE is
  173. developing reference implementations and draft standards in all areas
  174. of open systems from kernel APIs to networking to desktop
  175. look-and-feel.
  176.  
  177. Finally, it must be said that COSE was formed as the open systems 
  178. vendor's response to the coming of Microsoft Windows NT.  Windows NT 
  179. is the first non-UNIX based operating system to be available on a 
  180. number of systems architectures.  The scalability of NT makes 
  181. Microsoft's huge base in the Intel PC arena a threat across the entire 
  182. (performance) range of systems.  The availability of NT across 
  183. platforms finally delivers what UNIX and open systems have long 
  184. promised, a common API and look-and-feel across a broad performance 
  185. range.  It does so, however, at the expense of relying on a single 
  186. vendor, Microsoft.  The purpose of open systems is specifically to 
  187. avoid such vendor dependence.  Unfortunately, to this point, the open 
  188. systems processes have not managed to arrive at the required common 
  189. standards.  COSE represents the open systems vendors attempt to speed 
  190. development of such standards before Microsoft NT takes hold.
  191.  
  192. 2.2    How does COSE work / What is the "new" OSF?
  193.  
  194. In March 1994, it was announced by the COSE vendors that many of the 
  195. developing reference implementations and draft standards would be 
  196. created by groups within OSF using OSF's new pre-structured technology 
  197. (PST) processes.  OSF's recently modified business model introduced 
  198. the PST concept, which is expected to compliment - not replace - the 
  199. traditional OSF Request for Technology (RFT) method for acquiring new 
  200. technology.  The PSTs are formed by paying sponsors that will use OSF 
  201. to oversee the project and monitor the prime contractor chosen by the 
  202. sponsors.  Each PST will be led by a Project Steering Committee, whose 
  203. members will often be employees of the sponsoring organizations.  The 
  204. development of a PST technology will be done by a prime contractor 
  205. chosen by the sponsors.  One or more of the sponsors may themselves be 
  206. subcontractors.  The creation of the PST process is intended to be an 
  207. improvement upon the RFT process used in the old OSF model.  There is 
  208. no guarantee that any, and certainly not all, COSE projects will be 
  209. accomplished through OSF RFT or PST processes.  Another important 
  210. event was the inclusion of former UNIX International companies, e.g.  
  211. Sun, among the sponsors of the new OSF.
  212.  
  213. The original CDE 1.0 work is still being done by the COSE vendors 
  214. outside of the OSF PST process, however.  The initial version of CDE, 
  215. CDE 1.0, is expected to be finished by the end of CY94.  In August 
  216. 1994, IBM released AIX version 4.1.  CDE was delivered with that 
  217. release as the graphical user environment.  IBM was faced with either 
  218. continuing to supply IXI's X.desktop product, which IBM knew would be 
  219. made obselete in only a few months when CDE was released, or 
  220. delivering CDE in an "as is" state.  The CDE delivered by IBM was 
  221. incomplete and IBM added some temporary pieces to provide some 
  222. functionality.  
  223.  
  224. An OSF PST for the follow-on to the first release of the CDE was 
  225. formed in March 1994.  The X Consortium is expected to be the prime 
  226. contractor.  The follow-on release has not been offically named, but I 
  227. will call it the CDE 2.0 PST for clarity.  In addition to the original 
  228. four vendors (HP, IBM, Novell, and Sun), DEC, Fujitsu, and Hatachi 
  229. have joined as sponsors of the CDE 2.0 PST.  For this PST, the 
  230. committee chairman is David Bealby from SunSoft.  I mention this only 
  231. because having someone from Sun chairing a committee within OSF would 
  232. have been unthinkable a year or two ago.  By the end of 1994, the PST 
  233. hopes to have completed the project definition and plan, submit the 
  234. plan to the OSF board for approval, and make the necessary commitment 
  235. of resources to the project.
  236.  
  237. The COSE vendors intend to submit a CDE 1.0 specification and sample
  238. implementation to X/Open for standardization through the X/Open Fast
  239. Track process. They hope that the specification will be adopted by
  240. X/Open in early 1995. X/Open has announced a March 1995 target date
  241. for the release of the CDE 1.0 specification. Internally, the COSE
  242. developers use the following "triple-test" to determine if a
  243. technology is suitable for becoming a COSE technology:
  244.  
  245. - Unencumbered specification defined - Specification is vendor neutral 
  246. and available to general public for reasonable licensing fees and 
  247. conditions - Sample specification/implementation available - Ongoing 
  248. management of specification by relevant vendor-neutral standards body
  249.  
  250. The general flow of the PST process begins with the OSF Architectural 
  251. Planning Council, which will publish and maintain a road map that 
  252. indicates the type of technologies that the OSF is interesting in 
  253. hosting.  All PST projects that the OSF Board of Directors approve 
  254. will be consistent with that road map.  Project Sponsors are 
  255. organizations (two or more) that are proposing an open systems 
  256. technology to be developed independently and monitored by OSF.  The 
  257. PST process could considered shared R&D.  If the project is accepted 
  258. by the OSF Board of Directors, the work will be performed by a prime 
  259. contractor designated by the Project Sponsors.  The prime contractor 
  260. or one of the subcontractors may even be one or more of the sponsors 
  261. themselves.  Once the project is established, the prime contractor 
  262. carries out the work to develop a reference implementation of the 
  263. technology.
  264.  
  265. Other technologies being considered for transition to PSTs include the
  266. Distributed Management Environment (DME), OSF/1, Motif 2.0 (after its
  267. August 94 release), and the Distributed Computing Environment (DCE). 
  268. Many of the other proposed COSE technologies such as System Management
  269. or Objects may also be started as PST processes within OSF, but no 
  270. formal announcements have been made.
  271.  
  272. Once the reference technology has been completed to a logical 
  273. conclusion, the specification and any test suites will be submitted to 
  274. X/Open (or another standards body, when appropriate) for fast tracking 
  275. through the standards process.  The expectation is that the standards 
  276. organizations will agree to the COSE implementations and draft 
  277. standards with few changes.  Since the vendors play major roles in the 
  278. standards organizations, this is a reasonable expectation.  The 
  279. technology will be licensable to outside organizations directly from 
  280. OSF, and the sponsors are all inherently license for use of the 
  281. technology.  The sponsors will receive part of the proceeds from 
  282. licensing, but this is not expected to be the driving force behind the 
  283. inception of PSTs by the sponsors.  Once a standard is approved, the 
  284. vendors are committed to making a common behavior implementation 
  285. available on all their platforms.
  286.  
  287. OSF maintains that the PST process is being added to better meet the
  288. realities of the marketplace today. The goal is to streamline the open
  289. systems process and better facilitate collaborative development. In
  290. this form, OSF transitions from technology developer to project
  291. coordinator and a technology licensing body. The RFT process will
  292. continue to be used in the areas of basic research and where there is
  293. no consensus among vendors, but it is expected that the use of the PST
  294. process will become prevalent.
  295.  
  296. 2.3    How does COSE fit into the existing standards processes?
  297.  
  298. COSE is sensitive to the overall standards process.  Where a 
  299. promulgated standard meets requirements, COSE simply accepts the 
  300. standard and commits all COSE vendors to adhere to the standard.  In 
  301. those areas, COSE simply is guaranteeing even more openness than in 
  302. the past.  Customers will be able purchase any COSE "compliant" system 
  303. and be assured that the open, approved standard interfaces will be 
  304. available.  Where the process is moving forward, COSE has tended to 
  305. simply defer to the current process, and to state that COSE vendors 
  306. will provide the interfaces when the standard is completed.  In such 
  307. areas, non-controversial solutions will be available.  However, in 
  308. some areas, in the interest of moving standards forward at a more 
  309. rapid pace, COSE has defined APIs and interfaces that may not be 
  310. consistent with the direction of other standards bodies.
  311.  
  312. The decision of COSE to use X/Open instead of IEEE/ISO/ANSI/NIST for 
  313. establishment of formal COSE "standards" may be a problem.  The 
  314. problem stems from the following sources:
  315.  
  316. - X/Open is not an open process in the same way that the IEEE 
  317. standards are.  X/Open standards are agreed to by votes of the X/Open 
  318. directors and members.  Standards review and voting rights are given 
  319. *only* to paying members.  (When Novell agreed to turn over the UNIX 
  320. trademark to X/Open, Novell sought and received a post as a X/Open 
  321. director for a period of years.)  The cost to be a member of X/Open 
  322. varies depending on how one wants to be involved.  At a minimum, it 
  323. will cost $11K/year for a non-profit corporation to join the group 
  324. that formulates the requirements for the specifications (but not the 
  325. specifications themselves).  The cost can rise to over $500K/year is 
  326. an organization wants "broad brush" influence.  To join the Desktop+ 
  327. working group that is working on CDE issues, the cost is $25K/year.
  328.  
  329. - X/Open "branding" is not free.  It costs money to go through the 
  330. X/Open test suite for branding as X/Open compliant.  These fees are 
  331. due yearly and based on the applicant's revenue.  The fees are a 
  332. minimum of $25K/year, which would be fairly steep for a start-up 
  333. company.  Initially, branding will be done against OSes for Spec 1170 
  334. compliance, but CDE compliance will likely follow soon with other 
  335. specifications for multimedia and objects following later.
  336.  
  337. A draft of the formal specification of the CDE, XCDE, was submitted 
  338. to X/Open for review and comment the first week of October. A final 
  339. draft will be submitted from the CDE vendors to X/Open before the 
  340. end of the year.  Another specfication called "Spec 1170" is also 
  341. in the works.  It is discussed in section 3.2.
  342.  
  343.  
  344. 3.0    DETAILS ABOUT COSE
  345.  
  346. The following paragraphs introduce the technology areas that were
  347. originally identified by COSE. Several of these - most notably
  348. multimedia, objects, and distributed computing - are apparently being
  349. combined under the CDE umbrella. The first section is an overview of
  350. all of the areas as originally proposed. The following sections are
  351. more detailed information about those areas where details are known
  352. with the exception of CDE, which is found in section 4.
  353.  
  354. 3.1    What all does the COSE process encompass?
  355.  
  356. COSE is addressing all areas of computer systems from networking to 
  357. operating systems to user interfaces.  The next several paragraphs are 
  358. "one-liners" that describe those areas.  Those technologies where more 
  359. details are known are described in the following sections.
  360.  
  361. Common UNIX APIs - The Common APIs (Application Programming
  362. Interfaces) are the operating system interfaces that will be called
  363. "UNIX."  A common name for this specification is Spec 1170, which is a
  364. reference to the number of APIs in the first draft of the
  365. specification.  The interfaces include UNIX kernel APIs and commands.
  366.  
  367. Common Desktop Environment (CDE) - CDE includes look-and-feel, window
  368. management, messaging services in the desktop, and commands and
  369. programming APIs for windowing. It is based on Motif 1.2.3.
  370.  
  371. Graphics - Graphics standardizes line drawing, 3D graphics, etc.
  372.  
  373. Multimedia - Multimedia includes standards for integration of video,
  374. audio, etc. with text.
  375.  
  376. System Management - System management includes standards for printer
  377. interfaces, user and group management, software installation, etc. as
  378. well as a framework.
  379.  
  380. Objects - Objects includes standards for handling of objects in a
  381. heterogeneous, distributed environment.
  382.  
  383. Distributed Computing - Distributed computing includes standards for
  384. underlying protocols, RPCs, and distribution of file systems.
  385.  
  386. Public Windows Interface(PWI) - PWI is an attempt to force the
  387. Microsoft Windows messaging standards into the public domain.  The
  388. sample implementation allows the execution of Windows software within
  389. an X Window using a combination of 80x86 emulation and translation
  390.  
  391. Federated Naming - Federated Naming covers incompatible distributed
  392. naming standards, principally Sun's Network Information System
  393. (NIS/NIS+) and OSF's Cell Directory Service.(CDS).
  394.  
  395. Data Management - Data Management covers issues of large scale
  396. hierarchical data storage and retrieval.
  397.  
  398. Representatives from COSE vendors have indicated that there might be
  399. additional slices in the future.  One particular possibility was a
  400. public Macintosh interface analogous to PWI.  Apple has recently begun
  401. to market the Macintosh Application Environment (MAE), which runs
  402. Macintosh applications on UNIX workstations within a Motif (CDE)
  403. window, but with a Macintosh look and feel.
  404.  
  405. With the exception of PWI, COSE implementations for addressing 
  406. particular slices typically start from an existing open systems 
  407. standards base, but usually add to the base. The particular criteria 
  408. that COSE uses to decide how far to vary from the standards base 
  409. appears to depend on the particular slice of the COSE pie and the 
  410. maturity of the standards in particular areas. Where there are 
  411. competing, and potentially incompatible implementations, the tendency 
  412. seems to be to include all of the "standards." 
  413.  
  414. Inclusion of multiple interfaces has several impacts. As part of the 
  415. COSE process, all COSE vendors have agreed to support all parts of 
  416. COSE on their systems. However, it was agreed that pricing and 
  417. packaging of particular bits of COSE would be up to the particular 
  418. systems vendors. This potentially presents both problems and 
  419. opportunities. For COSE to insist that SCO (Novell), for instance, 
  420. include a desktop on all copies of SCO would cause significant pricing 
  421. problems for them. Many SCO systems are used as point-of-sales systems 
  422. with ASCII terminals attached to a single standalone machine. 
  423. Requiring those systems to include and pay for X Window clients and a 
  424. server with their heavy RAM and disk requirements was regarded as a 
  425. real problem given the size of the SCO customer base using ASCII 
  426. terminals only. Price/performance comparisons of COSE systems, 
  427. however, will be complicated by differences in vendor packaging of the 
  428. various technologies. On the other hand, those complications will 
  429. allow users to only pay for those options that they require. 
  430.  
  431. 3.2    What are the Common UNIX APIs?
  432.  
  433. On September 1, 1993, many major hardware vendors and software vendors 
  434. said that they would support a draft COSE API specification to UNIX 
  435. called Spec 1170. The specification is called Spec 1170 because, at 
  436. the time of announcement, the specification contained approximately 
  437. 1170 APIs. Spec 1170 covers APIs to kernels, C libraries, networking, 
  438. and command interfaces. 
  439.  
  440. The COSE methodology for development of the specification is 
  441. representative of the overall COSE approach. COSE started from a 
  442. standards base, X/Open's POSIX-based XPG4. COSE then looked at the 
  443. systems calls used by the fifty most popular software packages for 
  444. calls that were "missing" from the XPG4 base. Based on that review, 
  445. COSE decided to add the SVID curses support, Berkeley sockets, and a 
  446. number of other APIs. COSE, however, did not necessarily include 
  447. everything they found in the software. If calls were rarely used or 
  448. vendor "enhancement" specific, COSE did not include the calls. 
  449.  
  450. Note that the COSE software review was retrospective. If new 
  451. interfaces are emerging, they would not be found in the current base. 
  452. An example of this is the decision to not support a standard threads 
  453. implementation as part of Spec 1170. Threads give significant 
  454. performance boosts to applications on multiprocessor systems. However, 
  455. multiprocessor systems have only recently become widely available at 
  456. reasonable prices so few applications have been coded to support 
  457. threads in the past. The Institute of Electronical and Electronics 
  458. Engineers (IEEE) is currently working on a draft threads API in 
  459. POSIX.4a. Therefore, the API committee decided to defer decisions on 
  460. threads until IEEE finalizes its specification.
  461.  
  462. As announced during a June 22nd session at Xhibition '94, Spec 1170 
  463. has passed the draft stage and is in final editing within X/Open.  It 
  464. is not currently known what X/Open will call the specification.  The 
  465. current rumor is "Unified UNIX." The published specification was 
  466. expected in mid-September 1994.  However, I have not yet seen the 
  467. document, and I won't believe it 'til I see it.  The draft Spec 1170 
  468. documentation can be purchased on CD-ROM or electronically from X/Open 
  469. at this time.  In the US, you can telephone X/Open at (703) 876-0044.  
  470. In the UK, X/Open can be reached at +44 (0) 734 508311.  (FAX: +44 (0) 
  471. 734 500110.)
  472.  
  473. X/Open will develop test suites against the Spec 1170 standard. As
  474. part of an agreement between X/Open and Novell announced in October
  475. 1993, the UNIX trademark was transferred to X/Open so that official
  476. UNIX operating systems could be branded by X/Open against the
  477. specification using a test suite to be developed. (The official
  478. transfer of the UNIX trademark did not occur until around April or May
  479. 1994.) X/Open will brand systems as "UNIX" if and only if they pass
  480. the Spec 1170 test suites. No vendor can legally call their system
  481. "UNIX" unless they have passed the test suite and been branded.
  482.  
  483. 3.3    What is going on in graphics?
  484.  
  485. This working group is defining the standards for 2D and 3D graphics
  486. rendering under X. This is being done at the X Consortium level. The
  487. defined standard is to adopt Xlib (for 2D drawing), PEXlib (for 3D
  488. drawing), and XIElib (for working with images). These standards were
  489. already the de facto standards in the industry. COSE intends to
  490. support the standards bodies and hopes to accelerate the process.
  491. Imagery exchange and file formats do not appear to be part of this
  492. group's charter.
  493.  
  494. 3.4     What is COSE doing about multimedia?
  495.  
  496. This working group is just forming. COSE plans to work through the 
  497. Interactive Multimedia Association (IMA) to define standards for 
  498. integrated video, audio, and text-based objects. In a meeting, HP 
  499. representatives also mention the Distributed Media Services (DMS) and 
  500. Desktop Integrated Media Environment (DIME) as subgroups. 
  501.  
  502. 3.5     What is COSE doing in regards to objects?
  503.  
  504. As part of the original announcement, all of the COSE members have 
  505. endorsed the Object Management Group's (OMG) process and committed to 
  506. shipping Common Object Request Broker Architecture (CORBA) compliant 
  507. products. As noted above, the question that must be asked is how does 
  508. the CDE interprocess communication scheme based on Sun's non-CORBA 
  509. compliant ToolTalk, fit into COSE's overall distributed computing 
  510. plans. 
  511.  
  512. 3.6     What is COSE doing in the area of distributed computing?
  513.  
  514. All six of the original companies have pledged to fully support 
  515. SunSoft's Open Network Computing (ONC/ONC+), OSF's Distributed 
  516. Computing Environment (DCE), and Novell Netware clients on each of 
  517. their systems. The transport layer supported will be TCP/IP protocols. 
  518. Of interest to government agencies, OSI protocols are not supported. 
  519. Note that, while all vendors agreed to support all three distributed 
  520. computing solutions, the three are incompatible with one another. 
  521. Users will be guaranteed that their preferred solution will be 
  522. available across platforms, but if users do not control all platforms 
  523. that they must internetwork with, there will be incompatibilities at 
  524. the interfaces between domains. The availability of all three also 
  525. means that ISVs that want to support COSE will need to maintain all 
  526. three interfaces in their software. 
  527.  
  528. 3.7     What is COSE doing about system management?
  529.  
  530. [This information is from the October 1993 CDE Developers Conference 
  531. where the working group was in the formative stage. I have no 
  532. up-to-date information on this group. Some of this is out of date. - 
  533. cap] As this part of UNIX has long been chaotic with every vendor 
  534. having different solutions in all areas, this group has a difficult 
  535. job before them. The overall intent of the System Management Working 
  536. Group is to develop core enabling technologies and APIs. Simple 
  537. solutions will be developed by COSE but more complex needs will be met 
  538. by ISVs developing against the standard APIs. The group has picked a 
  539. couple of areas in which they think that they can have an immediate 
  540. impact including: 
  541.  
  542. - Software distribution and installation - Software distribution and 
  543. installation will be based on POSIX 1003.7.2. COSE intends to push for 
  544. completion of the standard and hopes to have a reference 
  545. implementation by the end of 1994. [This looks fairly unlikely 
  546. now.-cap] The resulting standard will support both push and pull 
  547. distribution. Policy distribution will come in later releases. 
  548.  
  549. - Distributed Print Services - Print services will be based on POSIX 
  550. 1003.7.1 June 93 draft, ISO 10175, and ANS.1. The software will offer 
  551. common APIs, GUI, and end-user desktop support. The tool is not 
  552. expected to be high end, but the APIs will allow ISVs to develop high 
  553. end applications. The working group expects to have a reference 
  554. implementation in 1994. [The print services work within CDE was 
  555. postponed until the second release. This also looks fairly unlikely 
  556. now.-cap] 
  557.  
  558. Areas to be addressed later include:
  559.  
  560. - User and group management - The user and group management will be 
  561. based on POSIX 1003.7.3. This COSE subgroup is just forming [as of 
  562. October 1993]. 
  563.  
  564. - Software License Management - Software license management standards
  565. will be available.  COSE has looked at a number of current licensing
  566. schemes and has decided that none are sufficient.  COSE will develop a
  567. standard approach.
  568.  
  569. - Backup and Restore and Data Management - The backup and restore
  570. standard will be based on the current X/Open Backup Services API.  The
  571. standard will also include hierarchical storage and retrieval
  572. standards and APIs based on the Data Management Interface Group (DMIG)
  573. and the IEEE Mass Storage Working Group Draft standards.  The System
  574. Management group also is working with the recently formed COSE Data
  575. Management group in this area.
  576.  
  577. Finally, the System Management Working Group plans to develop an
  578. overall system management framework.  The framework is likely to
  579. consist of APIs and services on CORBA.  The framework is expected in
  580. 1995.
  581.  
  582. 3.8     What is the Public Windows Interface (PWI)/WABI?
  583.  
  584. COSE has committed to the development of a specification for a Public 
  585. Windows Interface (PWI). The specification is an attempt to move the 
  586. Microsoft Windows interfaces into the public domain. The Microsoft 
  587. Windows applications are more mature, have more features, and have 
  588. many more users than their UNIX-based counterparts. If COSE is 
  589. successful, one will be able to develop native 80x86 Microsoft Windows 
  590. code and run it on COSE compliant systems. The specification includes 
  591. Windows look and feel, messaging, and 80x86 emulation. A Windows 
  592. application running under a PWI implementation has the look and feel 
  593. of a Microsoft Windows application within an X window. The PWI 
  594. emulator intercepts Microsoft Windows graphics messages and translates 
  595. them into native X Window calls. The non-Microsoft Windows code is 
  596. executed either by software emulation (on a non-80x86 machine) or 
  597. execution in hardware (on a 80x86 machine). 
  598.  
  599. 3.8.1    Current release of WABI.  
  600.  
  601. The SunSoft product WABI is a sample implementation of PWI.  Version
  602. 1.1 of WABI is currently available on SUN platforms and has been made
  603. available to other COSE vendors.  This version offers an emulation of
  604. Windows Version 3.1.  However, it does not offer support for DOS, DOS
  605. networking, or Object Linking and Embedding (OLE2).  The current
  606. product and the applications that run under it have a Microsoft
  607. Windows look and feel.  Later versions of PWI will provide support for
  608. networking.
  609.  
  610. 3.8.2     WABI Performance.  
  611.  
  612. SUN claims performance increases relative to native Microsoft Windows 
  613. applications. IBM has recently agreed to use WABI on its RS/6000 AIX 
  614. platforms. As part of its agreement, IBM will provide access to its 
  615. expertise in software emulation to attempt to increase performance. 
  616. Since PWI only runs the Windows front end natively and must software 
  617. emulate any calls to 80x86 processes, PWI performs much better on an 
  618. Intel-based hardware than on RISC-based hardware. If processes under 
  619. PWI are a significant portion of a user's job, Intel-based hardware 
  620. running UNIX may be preferable over RISC-based hardware. 
  621.  
  622. 3.8.3  PWI Look and Feel Issues.  
  623.  
  624. The current version of PWI has a Microsoft Windows look and feel. A 
  625. user can launch Windows applications from within the base WABI 
  626. (Program Manager) window, or can launch a WABI compatible application 
  627. from a UNIX X Window desktop. In either case, the launched application 
  628. has a Windows look and feel. If the user is exclusively a PWI user, 
  629. the CDE login session can bring up a PWI interface that covers his 
  630. entire screen. The user gets standard Microsoft Windows drivability, 
  631. and the user session could be easily mistaken for a Microsoft Windows 
  632. session. On the other hand, if the user is only a part-time user of 
  633. PWI, the user sees applications with two different look-and-feel 
  634. approaches on the screen at the same time. On a Windows NT platform 
  635. that is not the case. Windows NT sessions have the same look-and-feel 
  636. as Windows 3.X sessions so 3.X sessions running under NT look and act 
  637. like NT sessions. The COSE vendors indicated that they had taken 
  638. Windows look and feel approach rather than a conversion to native 
  639. Motif look and feel approach so that users coming to UNIX from 
  640. DOS/Windows will not be faced with look and feel changes. 
  641.  
  642. Related to the PWI look and feel issue, IXI has recently announced a 
  643. product, winTIF, that allows applications written to use the Motif 
  644. look and feel to display a Microsoft Windows look and feel instead. It 
  645. is intended for Microsoft Windows users that need to occasionally 
  646. access software developed to the Motif API from their Windows-based 
  647. desktops. This solves the look and feel issue for use of UNIX displays 
  648. to Microsoft Windows platforms. 
  649.  
  650. 3.8.4  Microsoft's Response to PWI.  
  651.  
  652. As can be expected, Microsoft has responded to the development of
  653. WABI/PWI.  Microsoft's response to PWI is three fold:
  654.  
  655. - Microsoft has indicated that the Windows interface is theirs.  Any
  656. attempt to use it by others may be open to legal action.
  657.  
  658. - Microsoft control of the Windows "standard" allows for rapid 
  659. movement forward. The reason that UNIX has had such problems agreeing 
  660. is that UNIX vendors and the open systems processes often have 
  661. conflicting interests. 
  662.  
  663. - Microsoft has signed an agreement with Insignia, makers of SoftPC, 
  664. to build a PWI-like product. Insignia's solution offers a Microsoft 
  665. Windows look and feel on UNIX RISC-based platforms. A Motif look and 
  666. feel is promised in a later release. The agreement gives Insignia 
  667. access to Microsoft Windows code for their development. 
  668.  
  669. Insignia's access offers several advantages over a PWI solution:
  670.  
  671. - Insignia's solution will not be reverse engineered. Insignia's 
  672. access to the Microsoft code may yield better performance since it is 
  673. based on the Microsoft code. It may also yield better compatibility 
  674. when initially delivered. 
  675.  
  676. - Insignia's solution will not tie Microsoft to a specific interface.
  677. Microsoft will be able to modify their software and Insignia's
  678. solution will easily follow along.  A reverse engineered solution like
  679. PWI is likely to have time to market problems over time as the
  680. "standard" Microsoft code is "enhanced".
  681.  
  682. - Insignia's solution does not face any legal challenges.
  683.  
  684. 3.8.5  Potential Impact of PWI on Software ISVs.  
  685.  
  686. PWI and the Microsoft-Insignia solution will have significant impacts 
  687. on software ISVs. The Microsoft Windows ISVs will now be able to sell 
  688. their products into the UNIX X Windows market without porting their 
  689. software to UNIX. The effects of PWI on the existing UNIX market will 
  690. manifest themselves in a number of ways depending on the type of 
  691. application: 
  692.  
  693. - Applications that perform well under WABI are ones that are heavily 
  694. GUI intensive. Such applications typically are end-user productivity 
  695. applications. 
  696.  
  697. - Common Windows applications will be available at Windows prices on UNIX 
  698. platforms.  Because of fierce competition and economies of scale, Windows 
  699. applications are typically much less expensive and have more features than 
  700. corresponding X Windows applications.
  701.  
  702. - Given that the size of the UNIX desktop market is about ten percent 
  703. of the Microsoft Windows market and that ISVs can now service that ten 
  704. percent by targeting the other ninety percent, it is questionable that 
  705. ISVs will undergo the expense of porting to UNIX workstations unless 
  706. there are significant performance gains to be had by doing so. The 
  707. gains are for the software that is heavily computational or server 
  708. oriented. For the most part, however, those ISVs are already ported to 
  709. UNIX and, in fact, many applications were initially developed on UNIX 
  710. and ported to the lower performance DOS/Windows platforms. Those ISVs 
  711. are now porting to the scalable Windows NT platforms and obtaining 
  712. similar performance to their UNIX native software. 
  713.  
  714. - Users with interoperability requirements with Windows systems will 
  715. tend to move to the Windows applications for compatibility reasons. 
  716. Note that this specifically impacts organizations that use the 
  717. Microsoft Office product as their company standard since Microsoft has 
  718. not ported their products to UNIX. 
  719.  
  720. 3.9     What is COSE doing about Federated Naming?
  721.  
  722. [This information is from the October 1993 CDE Developers Conference.] 
  723. OSF's Cell Directory Service (CDS) and Sun's Network Information 
  724. Service (Plus) NIS+ are supported. DEC is sponsoring this effort. 
  725.  
  726. 3.10     What is COSE doing about Data Management?
  727.  
  728. [This information is from the October 1993 CDE Developers Conference.] 
  729. The COSE Data Management working group has recently been formed. They 
  730. are working with the Data Management Interchange Group (DMIG) on APIs 
  731. for hierarchical storage and retrieval. COSE also plans to make any 
  732. COSE data management solution consistent with the IEEE Mass Storage 
  733. Reference Model. Since that model is in draft form, COSE will work to 
  734. finalize the draft. 
  735.  
  736. 3.11    How will the COSE technologies be packaged?
  737.  
  738. As indicated above, some of the technology areas will be offerred as 
  739. options by some vendors. Persons acquiring a system on which they 
  740. intend to include COSE technologies will need to determine the 
  741. particular bits (technology areas) of COSE that their particular 
  742. system requires in order to be able to compare vendors prices. This 
  743. impacts using systems from different vendors in several ways: 
  744.  
  745. - In the first place, there will be technical problems. Software that 
  746. assumes the presence of particular bits simply will not run without 
  747. them. On some systems, these will be included, and on others, they 
  748. will be an option. 
  749.  
  750. - Secondly, there will be problems specifying and comparing prices 
  751. when purchasing systems. The purchaser will need to specify exactly 
  752. which pieces of COSE are required. Otherwise, there is no guarantee 
  753. that a particular vendor's bid includes all required parts. 
  754.  
  755.  
  756. 4.0    DETAILS ABOUT THE COMMON DESKTOP ENVIRONMENT (CDE)
  757.  
  758. In the CDE, the vendors (not including SCO, who don't appear to be 
  759. involved in the CDE portion of COSE) are working closely together with 
  760. each contributing personnel and technologies to the effort of 
  761. producing a common user environment (desktop) that has reasonably 
  762. identical (considering that different vendors have different screen 
  763. resolutions, framebuffers, phosphors, etc.) look and feel across all 
  764. of the platforms.  COSE has taken what they feel is the best user 
  765. interface and desktop technologies from all of its vendors, and is 
  766. enhancing and combining them.  In the process of developing CDE, COSE:
  767.  
  768. - has solved the OpenLook versus Motif look-and-feel controversy; 
  769.  
  770. - is developing a standard UNIX desktop;
  771.  
  772. - is standardizing on Sun's ToolTalk for interapplication messaging at
  773. the desktop level;
  774.  
  775. - is creating a standard visual scripting language; and
  776.  
  777. - is opening up the desktop specification and programming APIs for
  778. standardization through X/Open.
  779.  
  780. CDE will compete with and may replace current desktop managers such as
  781. Visix's Looking Glass and IXI's X.desktop on UNIX workstations. IXI is
  782. supplying tools to convert X.desktop's proprietary configuration files
  783. and icons into COSE's CDE. The CDE is a coherent, visually elegant [in
  784. the author's opinion], open user environment that takes full advantage
  785. of the distributed multiprocessing UNIX environment. COSE expects to
  786. deliver the CDE specification to X/Open and have vendor support for
  787. the specification by the third quarter of 1994. X/Open plans to
  788. publish the specification by the fourth quarter of 1994. CDE
  789. implementations should be arriving from vendors beginning in early
  790. 1995 (if not sooner).
  791.  
  792. 4.1    What is in the CDE?
  793.  
  794. The following paragraphs highlight the functionality of the CDE.
  795.  
  796. 4.1.1    What is the CDE desktop?
  797.  
  798. Upon login, the user is presented with the CDE Desktop.  The desktop
  799. includes a front panel, multiple virtual workspaces, and window
  800. management.  CDE supports application launching from a File Manager,
  801. from an Application Manager and from the Front Panel (also known as
  802. the Dashboard).  Each of the subcomponents of the desktop are
  803. described below.
  804.  
  805. 4.1.2    What is the Front Panel? 
  806.  
  807. The front panel contains a set of icons and popup menus (more like
  808. roll-up menus) that appears at the bottom of the screen (by default).
  809. HP's VUE product forms the basis for the CDE desktop.  The front panel
  810. contains the most used applications and tools for managing the
  811. workspace.  Users can drag-and-drop icons from the File Manager or
  812. Application manager to the popups for addition.  The user can also
  813. manipulate the default actions and icons for the popups.  The front
  814. panel can be locked so that users can't change it.  A user can
  815. configure 1-12 (or more) virtual workspaces each with different
  816. backgrounds and colors.  Each workspace can have any number of
  817. applications running in it.  An application can be set to appear in
  818. one, more than one, or all workspaces simultaneously.
  819.  
  820. 4.1.3    What is the File Manager?
  821.  
  822. CDE includes a standard File Manager. The functionality is similar to
  823. that of the Microsoft Windows, Macintosh, or Sun OpenLook file
  824. manager. Users can directly manipulate icons associated with UNIX
  825. files, drag-and-drop them, and launch associated applications. The
  826. associations are as described below under "File Action Binding /
  827. Typing".
  828.  
  829. 4.1.4    What is the Application Manager?
  830.  
  831. The user interaction with the Application Manager is exactly analogous
  832. to File Manager except that is is intended to be a list of executable
  833. modules available to a particular user. The user launches the
  834. Application Manager from an icon in the Front Panel. Users are
  835. notified when a new application is available on a server by additions
  836. (or deletions) to the list of icons in Application Manager window.
  837. Programs and icons can be installed and pushed out to other
  838. workstations as an integral part of the installation process. The list
  839. of workstations that new software is installed on is configurable.
  840. The Application Manager comes preconfigured to include several
  841. utilities and programs.
  842.  
  843. 4.1.5    What is Application and File Action Binding/Typing?
  844.  
  845. CDE adds a veneer on top of the traditional UNIX file system by
  846. allowing association of icons and actions to executable modules and
  847. data files. The Action and Typing capability of CDE allows for a
  848. file's type to be set by any combination of inspecting the contents of
  849. the file and pattern matching on the name of the file. Once a file has
  850. been "typed" an appropriate icon can be displayed for the file in the
  851. front panel, application launcher, and file manager. Actions can be
  852. assigned to icons so that associated commands are invoked when an icon
  853. is clicked.
  854.  
  855. 4.1.6    What is Session Management?
  856.  
  857. The session management portion of CDE is responsible for start up and
  858. shut down of a user session. Also included is a login manager based on
  859. XDM. In the CDE, applications that are made "CDE aware" are warned via
  860. an X Event when the X session is closing down. The application
  861. responds by returning a string that can be used by the session manager
  862. at the user's next login to restart the application. Currently, CDE
  863. "remembers" two sessions per user. One is the "current" session, where
  864. a snapshot of the currently running applications is saved.  These
  865. applications can automatically restarted at the user's next login. The
  866. other is the default login, which is analogous to starting an X
  867. session in X11R5/Motif and having X clients started up using entries
  868. in the .xinitrc file. The user chooses which of the two sessions to
  869. use at the next login.
  870.  
  871. 4.1.7    How do I program with the CDE?
  872.  
  873. To a great extent, the CDE look-and-feel and programming APIs are
  874. based on the Open Software Foundation's (OSF) Motif.  There are
  875. extensions to the basic Motif APIs to cover new concepts such as
  876. multiple virutal workspaces, ToolTalk messaging, and session
  877. management.  As part of the initial COSE announcement, Sun agreed to
  878. abandon OpenLook and support Motif.  However, the other COSE vendors
  879. agreed that the COSE look-and-feel would be open, no longer controlled
  880. by OSF.  In addition, while the look-and-feel is Motif-based, COSE
  881. addressed Sun concerns regarding drivability and support for certain
  882. OpenLook features and widgets that were not part of the Motif
  883. specification.  Addition of those features eases Sun user and
  884. developer transitions to COSE. The CDE environment is able to run
  885. OpenLook applications without modification (on a Sun anyway). The
  886. resulting CDE specification is a superset of the current OSF
  887. Motif. COSE is working with OSF to merge the COSE additions into OSF
  888. Motif.
  889.  
  890. COSE is also developing a look-and-feel style guide that vendors are
  891. encouraged to follow. There will also be a branding/test suite
  892. mechanism to ensure compliance. COSE hopes that marketplace
  893. acceptance/pressure will also provide inducement for ISVs to seek
  894. compliance.
  895.  
  896. 4.1.8    How does CDE do drag-and-drop?
  897.  
  898. CDE's drag and drop is based on Motif 1.2.3. This will work with many
  899. current and future X/Motif applications. This facility supports the
  900. dragging and dropping of files even if they physically reside on other
  901. workstations.
  902.  
  903. 4.1.9    How does CDE support remote application execution?
  904.  
  905. CDE actions (See Actions and File Typing, above.) allow invocation of
  906. remote applications across the network. Remote invocation is through a
  907. CDE specific subprocess control daemon (dtspcd). The daemon overcomes
  908. limitations of existing remote invocation mechanisms such as remote
  909. shell (rsh) by passing the entire current user environment to the
  910. remote process. The daemon also takes care of the xhost command
  911. necessary to give the remote process authorization to display on the
  912. local X server screen. Note, however, the daemon is new and is not
  913. available on non-CDE platforms, even including the COSE vendor's
  914. legacy systems.  Note also, COSE has not decided whether to publish
  915. the interface definition to the daemon so that other vendor's
  916. applications can use it.
  917.  
  918. 4.1.10 How does CDE support inter-application communication?
  919.  
  920. Application messaging is currently based on Sun's ToolTalk. CDE has
  921. built some convenience functions on top of the basic ToolTalk to ease
  922. its use. It was strongly recommended at the CDE Developers Conference
  923. that all vendors plan to incorporate ToolTalk interfaces into their
  924. products. The problem to be resolved in this area is that ToolTalk is
  925. not Common Object Request Broker Architecture (CORBA) compliant, while
  926. COSE has indicated that object management services should be CORBA
  927. based. It is likely that a software interface to CORBA services from
  928. ToolTalk could be developed. Sun has indicated in the past that they
  929. would provide such interfaces as part of Sun's Distributed Objects
  930. Everywhere (DOE) project so such an interface is possible. Until such
  931. an interface is available, developers may have to develop and maintain
  932. interfaces to both CORBA and ToolTalk.
  933.  
  934. 4.1.11 What utilities are included? 
  935.  
  936. The CDE includes a number of standard utilities. The utilities
  937. consist of:
  938.  
  939. - calculator - The calculator is a Motif version of the Sun
  940. calculator.
  941.  
  942. - clock - The clock is analog only and embedded in the Front Panel.  A
  943. digital clock is included in the desktop utilities and can be
  944. installed in the Front Panel.
  945.  
  946. - the standard MIT X clients.
  947.  
  948. - A tool for file typing and icon action manipulation.
  949.  
  950. - Dialog and scripting services - Dialog and scripting services are
  951. provided by the Desktop Korn Shell (dtksh). dtksh is similar to the
  952. Korn Shell, but has quite a few structured programming extensions.
  953. The COSE windowing extensions allow the shell to create, output to,
  954. and read from Motif dialog and top level windows within a script.
  955. Also, dtksh has the capability to interact with C code, which is
  956. necessary for privileged code execution for security administration
  957. such as adding and removing users. At this time, there is no support
  958. for dtksh by any GUI builders, but a builder can be expected at some
  959. time in the future. Once a builder is available, dtksh will become
  960. the standard visual scripting language on UNIX. Projects requiring
  961. "glue" code to tie together COTS products, for example, can be
  962. developed in this language.
  963.  
  964. - A terminal emulator - The terminal emulator window application
  965. supplied with CDE is dtterm, which is analogous to xterm. dtterm
  966. supports full vt220 emulation and graphics. CDE extensions to MOTIF
  967. provide developers the terminal emulator widget for inclusion into
  968. their own programs.
  969.  
  970. 4.1.12 What applications are included?
  971.  
  972. The CDE includes several desktop tools:
  973.  
  974. - A mailer. CDE's mailer has minimal support for multimedia. It
  975. supports MIME format for attachments, and it will also be able to read
  976. X.400 mail and Sun V3 (Sun's mailtool format) mail. (This will be
  977. true when the tool is complete -- the reference version does not
  978. provide the attachment features.) As with the desktop manager, the
  979. mail sent by this tool will be interoperable with all supported
  980. platforms. The mail tool also supports drag and drop of multimedia
  981. via ToolTalk. Non-textual objects are represented as icons imbedded
  982. in text and are accessed by clicking on the icons. Access launches an
  983. appropriate tool for the object. Tool launching is handled using
  984. ToolTalk.
  985.  
  986. - A multi-user calendar. The calendar tool is based on Sun's OpenLook
  987. calendar tool, but has a new interface and added capability. The
  988. calendar has a to-do list, an appointment/meeting scheduler, which can
  989. be used to schedule personal or group appointments. The latter is
  990. done by examining the calendars of the other members of the group
  991. selected to participate in the meeting. An individual has several
  992. ways to protect the information on their personal calendar. They can
  993. make the calendar completely inaccessible to others, which defeats the
  994. group scheduling capability. They can show appointment times as being
  995. blocked out, but others in the group can not see the details of the
  996. appointment. Or the appointment and details can be read by the group.
  997. When a meeting is scheduled for a group, the person scheduling the
  998. meeting can send mail to all the participants.
  999.  
  1000. - A general purpose text editor/word processor. This is a lightweight
  1001. tool for text editing. It will probably serve best as an auxillary
  1002. application for use by the mailer and other applications. It supports
  1003. text wrapping with selectable margin settings, spell checking, search
  1004. and replace, X cut and paste, and file inclusion.
  1005.  
  1006. - An icon editor. This application is a fairly full featured
  1007. graphical icon (pixmap) editor. Actually, if it supported a few more
  1008. output formats like xwd or tif, this wouldn't be a bad (bitmap) paint
  1009. program. As it is, it is quite capable for creating icons. The
  1010. screen capture capability is particularly useful.
  1011.  
  1012. 4.1.13 What is the CDE Print Server?
  1013.  
  1014. The print server (to be) included with CDE is essentially a
  1015. specialized X server. A few special functions were added to
  1016. initialize a print session, initialize a page, print a page, and end a
  1017. print job. The printed "page" is drawn using normal X/Motif commands
  1018. like XmDrawString. The size of the page and the resolution of the
  1019. page are attributes that the application drawing the page can
  1020. retrieve. Once the page is drawn, a command to print the page is
  1021. issued. The X print server calls a device specific driver to converts
  1022. the printed page to the language of the printer such as PostScript or
  1023. PCL (used by HP printers). Printer manufacturers need only supply a
  1024. driver to convert the printer server's representation of the printed
  1025. page to their printer's language. This is analogous to vendor's
  1026. supplying graphics buffer drivers for their specific displays in the X
  1027. server as is done today.
  1028.  
  1029. The basic print dialog is supplied by the CDE software, but individual
  1030. manufacturers are free to add to this dialog to allow for special
  1031. options for their printer. This is similar to what printer
  1032. manufacturers do for Microsoft Windows or the Macintosh today. In
  1033. addition to the print dialog there is the server dialog and the
  1034. printer dialog for selecting the server and printer, respectively, to
  1035. be used for a print job. This is analogous to choosing an AppleTalk
  1036. zone and printer with the Macintosh. The CD-ROM early release version
  1037. supports only black and white printing on PostScript and PCL (HP)
  1038. printers.
  1039.  
  1040. At Xhibition '94, it was announced that the Print Server will not be
  1041. in the official CDE 1.0 release (expected first half 1995). It is
  1042. expected that it will be in the CDE V2.0 release (probably 1996).
  1043.  
  1044. 4.1.14 What is the Help System? 
  1045.  
  1046. CDE provides an extensible hypertext based help system. A standard
  1047. GUI and widget is available and APIs are provided for loading the
  1048. system and using it from within applications. The help documents are
  1049. SGML-based and support both graphics and hypertext links in addition
  1050. to text. The CDE Look and Feel Guide strongly suggests that all
  1051. applications use the help system.
  1052.  
  1053. 4.1.15 Any other features?
  1054.  
  1055. CDE includes a number of other features such as:
  1056.  
  1057. - APIs for internationalization;
  1058.  
  1059. - User preferences selection of colors, backdrops, fonts, and other
  1060. session parameters;
  1061.  
  1062. - ToolTalk enabled icon and text editors; and
  1063.  
  1064. - InterClient Communications Convention Manual (ICCCM) support.
  1065.  
  1066. 4.2    How do I get the CDE software for my workstation?
  1067.  
  1068. If you wait long enough, the CDE software will come to a workstation 
  1069. near you.  (IBM has released a early snapshot of the CDE with its AIX 
  1070. 4.1 release in August 1994.  See section 2.2 above for details.  Most 
  1071. vendors are planning to release the first official version (1.0) of 
  1072. CDE as their user environment in the spring of 1995.  If you would 
  1073. like to start working with the CDE now, the second developer's 
  1074. snapshot of the CDE is available through Uniforum.  At $150 (for first 
  1075. time buyers - $25 for the 10/93 snapshot owners) this is quite a 
  1076. bargain.  Shipping and handling not included.  Shipping was $5 in the 
  1077. US.  Only HP, IBM, Novell (UnixWare), and Sun binaries are included at 
  1078. this time.  The DEC port of CDE was demonstrated at Xhibiton '94.  It 
  1079. was still a fairly early port with some rough edges, but they are 
  1080. probably close to (pre-)releasing a developer kit.  TriTeal, Inc.  is 
  1081. working on a port of CDE to SGI and other MIPS workstations as well as 
  1082. porting the CDE to SunOS.  They also mention the AT&T MP RAS, DEC 
  1083. OSF/1, and IBM AIX 3.2.5 (as opposed to AIX 4.1, which will include 
  1084. CDE).  Tektronix and HP have also said that they will support CDE on 
  1085. their X terminals.
  1086.  
  1087. HOW: Uniforum, under the sponsorship of the companies who developed the
  1088.    CDE code, will manage the order process. You will be able to
  1089.    order by mail, fax, or telephone. Send all orders and inquiries
  1090.    to:
  1091.      UniForum, 4/94 CDE Snapshot Order
  1092.      2901 Tasman Drive, Suite 205
  1093.      Santa Clara, CA 95054-1100
  1094.      USA
  1095.  
  1096.    Telephone (US and Canada)    1-800-986-1920 ext 30
  1097.    FAX (US and Canada)       1-800-986-1925
  1098.  
  1099.    Telephone (International)    1-408-986-8840 ext 30
  1100.    FAX (International)       1-408-986-1645
  1101.  
  1102.    (Business hours are from 8:00 AM to 5:00 PM Pacific Standard Time)
  1103.  
  1104. 4.3    What do I get when I buy it?
  1105.  
  1106. A single CD-ROM disc contains the binaries for Sun, HP-UX, IBM AIX,
  1107. and Novell UnixWare platforms, as well as hundreds of pages of
  1108. documentation. The environment includes:
  1109.  
  1110. *** software / applications ***
  1111.  - dtwm, the "desktop window manager", which is essentially HP-VUE
  1112.   ported to the other platforms with some interesting other features
  1113.   added such as ToolTalk
  1114.  - a very usable file manager (with file typing and actions are nicely
  1115.   supported), which obviates you from purchasing one
  1116.   from IXI (X.desktop) or Visix (Looking Glass).
  1117.  - dtmail, an e-mail program that understands MIME and Sun V3
  1118.   (mailtool) formats (but still needs some bullet-proofing)
  1119.  - dtksh, a windowing Korn shell that allows scripts like:
  1120.     #!/opt/dt/bin/dtksh
  1121.     XtInitialize TOP hello Hello "$@"
  1122.     XtCreateManagedWidget H h label $TOP \
  1123.         labelString:"Hello World"
  1124.     XtRealizeWidget $TOP
  1125.     XtMainLoop
  1126.  - dtcm, a calendar/appointment manager that lets you keep your
  1127.   own to-do lists as well as schedule group appointments (with other
  1128.   people using dtcm). (based on Sun's calendar tool)
  1129.  - dtcalc, a calculator (based Sun's OpenWindow calculator)
  1130.  - dtbuilder, a GUI interface builder that handles the additional CDE
  1131.    widgets in addition to std. Motif 1.2.3 widgets and generates C code.
  1132.    Also, called "AppBuilder."
  1133.  - an extensive authoring facility for supporting online help
  1134.  - dtterm, terminal emulation widget, which supports VT200 emulation
  1135.    and can be added as a widget in your own software
  1136.  - dtpad, a simple notepad editor, which is not bad as simple editors
  1137.    go.
  1138.  - icon editor, support both xbm and xpm formats, lots of nifty icons
  1139.    supplied
  1140.  - Lots of GUI front-ends to UNIX tools like tar, df, etc.
  1141.  
  1142. The CD includes lots of development files like includes, examples,
  1143. etc.  The purpose of the CD-ROM is to provide an early development
  1144. environment to give ISVs a leg-up on developing for CDE. [IMHO, they
  1145. did a nice job.]
  1146.  
  1147. The /usr/dt directory contains:
  1148. app-defaults/ bin/      copyright   include/    palettes/
  1149. appconfig/   config/    dthelp/    lib/      scripts/
  1150. backdrops/   contrib/    examples/   man/
  1151.  
  1152. The /usr/dt/contrib directory has (ls -RC):
  1153. ---------------------------------------------------------------------
  1154. dtaction/   dtdnddemo/  dtksh/    examples/
  1155. dtdatatypes/ dthelp/    dtwm/
  1156.  
  1157. ./dtaction:
  1158. Makefile.HP   Makefile.SUN   dtactiondemo.c
  1159. Makefile.IBM  Makefile.USL
  1160.  
  1161. ./dtdatatypes:
  1162. Makefile.HP  Makefile.IBM  Makefile.SUN  Makefile.USL  datatyping.c
  1163.  
  1164. ./dtdnddemo:
  1165. Dtdnddemo   Makefile.IBM  Makefile.USL
  1166. Makefile.HP Makefile.SUN  dtdnddemo.c
  1167.  
  1168. ./dthelp:
  1169. Help.h         Makefile.HP       helpdemo.app-defaults
  1170. HelpCache.c    Makefile.IBM      helpdemoHelpEnv.csh
  1171. HelpCacheI.h   Makefile.SUN      helpdemoHelpEnv.sh
  1172. Main.c         README
  1173. Main.h         help/
  1174.  
  1175. ./dthelp/help:
  1176. Makefile    bike.bm    helpdemo.htg
  1177.  
  1178. ./dtksh:
  1179. CallDataTest4*   ListBounds1*    SessionTest*    TransTest1*
  1180. CallbackTest2*   ListItemPos1*   TextCutBuf1*    WorkProcTest1*
  1181. DtCursorTest2*   ListPosSel1*    TextDisp1*      XdrawTest*
  1182. DtWsTest1*       PopupTest*      TextFXYPos1*    crMovesText1*
  1183. EventHandlerTest* SelBoxResTest*  TransEventTest*  ksh93.memo
  1184.  
  1185. ./dtwm:
  1186. occupy/ wsinfo/
  1187.  
  1188. ./dtwm/occupy:
  1189. Makefile.HP  Makefile.IBM  Makefile.SUN  Makefile.USL  occupy.c
  1190.  
  1191. ./dtwm/wsinfo:
  1192. Makefile.HP  Makefile.IBM  Makefile.SUN  Makefile.USL  wsinfo.c
  1193.  
  1194. ./examples:
  1195. sys.font.iso
  1196. ------------------------------------------------------------------------
  1197. And lots of other stuff.
  1198.  
  1199. *** documentation ***
  1200. The documentation on the CD-ROM as PostScript files includes:
  1201. - Application Builders User's Guide
  1202. - (COSE CDE) Certification Checklist
  1203. - Internationalization Programmer's Guide
  1204. - Dtksh User's Guide
  1205. - Help System Author's and Programmer's Guide
  1206. - Programmer's Overview
  1207. - Programmer's Guide
  1208. - Advanced User's and System Administrator's Guide
  1209. - Getting Started Using ToolTalk Messaging
  1210.  
  1211. I was unable to print the CDE documentation without physically
  1212. attaching the (Apple LaserWriter IINT) printer directly to my
  1213. workstation and printing from the CD-ROM. For some reason when trying
  1214. to print across the network, the printing would stop as soon as the
  1215. first figure in the documentation was encountered. I have heard that
  1216. others had similar problems.
  1217.  
  1218. 4.4    Is CDE safe/reliable/stable?
  1219.  
  1220. I have been using the CDE snapshot (on Sun LX, IPX, SPARC 10, and
  1221. SPARCserver1000) since it was handed out at the October 1993 CDE
  1222. Developers Conference. If all pre-release software were this stable, 
  1223. I wouldn't need the "real" stuff. Except for the (very) occasional
  1224. glitch, CDE has been rock solid for me. I would like to hear how
  1225. stable it has been for others on other platforms.
  1226.  
  1227. I am now using the second (4/94) release, which added more
  1228. functionality such as the calendar and more functional mail. Some
  1229. parts are still under development. What is present, is stable. There
  1230. is a warning, however, in the documentation that the APIs are still in
  1231. flux and that changes may (will likely) occur before the official
  1232. release. This must be considered before starting any development with
  1233. CDE. There were several changes in the APIs and file locations/formats
  1234. from the first to the second snapshot.
  1235.  
  1236. 4.5 Is an object-oriented GUI toolkit like Fresco in the works for
  1237. CDE?
  1238.  
  1239. I have not heard anything about Fresco by name, but OpenDoc, OpenStep, 
  1240. and Taligent are on the minds of (i.e., being finacially supported by) 
  1241. those who are the sponsors of COSE.  There has not been any public 
  1242. mention of the plans for transition from CDE as it is today to an 
  1243. object-oriented environment, but one is certainly needed since the 
  1244. COSE sponsors are heading down that path.
  1245.  
  1246. The potential problem is that the new object-oriented environment from 
  1247. Sun (i.e., OpenStep) does not interoperate with the environment from 
  1248. IBM (i.e., Taligent) and that they have a different "look and feel." 
  1249. This is precisely the problem that CDE is supposed to solve.  In a 
  1250. session at Xhibition '94, Sun held a developer's meeting in which they 
  1251. described the future desktop environment with CDE windows, OpenStep 
  1252. windows, WABI windows, etc.  as a desirable thing.  Sun went further 
  1253. to state that (and I am paraphrasing here) that developers could 
  1254. choose between rapid application development (and all the other good 
  1255. things from the object-oriented paradigm) using OpenStep or 
  1256. cross-platform portability with CDE.  Of course, it might be nice to 
  1257. have both.
  1258.  
  1259. 4.6    How does the CDE relate to Motif 2.0?
  1260.  
  1261. At the OSF User Environment Component (UEC) Special Interest Group 
  1262. (SIG) in May 1994, the status of Motif 2.0 and its relationship to 
  1263. COSE/CDE was discussed.  As requested by the Motif SIG, Motif 2.0's 
  1264. scheduled release date was postponed until August 1994 so that 
  1265. enhancements and CDE compatibility work could be completed.  (Snapshot 
  1266. 3 of the Motif 2.0 Beta was released in May 1994.) After the release 
  1267. of Motif 2.0, OSF will lay off its Motif development team and will not 
  1268. develop any further releases under the RFT processes.  Starting a PST 
  1269. process for Motif follow-ons is a possibility.  OSF expects that a 
  1270. merger of CDE and Motif into a single PST will happen at some point in 
  1271. the future.  The most likely time frame is early to mid 1996.  There 
  1272. will be a method to license and fund the two separately.
  1273.  
  1274. CDE compatibility testing with Motif 2.0 reveals some 
  1275. incompatibilities and mismatched features.  This is not surprising 
  1276. since CDE is based on Motif 1.2.3 with enhancements rather than Motif 
  1277. 2.0.  The CDE enhancements are designed to increase Motif usability 
  1278. and ease transition from OpenLook.  Some of the enhancements impact 
  1279. the look.  Others impact the feel and drivability.  None of the CDE 
  1280. enhancements change the Motif API, however, so Motif 1.2.3-4 
  1281. applications should require only a recompilation to be CDE 
  1282. applications.  The CDE includes as enhancements to Motif 1.2.3 several 
  1283. items that were to be included in Motif 2.0.  For example, the 
  1284. ComboBox and SpinBox, and Gauge widgets from CDE are also in the newer 
  1285. Motif 2.0.  An enhanced FileSelectionBox widget (used when opening and 
  1286. saving files) was added to Motif 2.0 from the CDE.  Some of the other 
  1287. CDE enhancements can be implemented in Motif 2.0 by using and 
  1288. enforcing pre-existing Motif options and properties.  Some CDE 
  1289. components such as the terminal emulation widget and help widget have 
  1290. no counterparts in Motif 2.0.
  1291.  
  1292. Depending on whether or not shared libraries are used, the CDE and
  1293. Motif environments can coexist to a varying degree. A dynamically
  1294. linked Motif 2.0 application can exist in the CDE environment if
  1295. particular attention is paid to proper installation of the
  1296. libraries. Problems occur with CDE applications if the Motif shared
  1297. library is allowed to replace the CDE shared library. If Motif 2.0
  1298. applications are statically linked, this problem is avoided and Motif
  1299. 2.0 functionality is guaranteed in either the CDE or Motif
  1300. environments. If defaults are used for resources, statically linked
  1301. Motif 2.0 applications will exhibit most of the CDE behavior.
  1302. Applications developed against Motif 1.2 will work in the CDE
  1303. environments and have CDE behavior.
  1304.  
  1305. The Motif Style Guide has undergone some reorganization for
  1306. readability, convergence with IBM's Common User Access (CUA) and
  1307. Windows environments, and alignment with the CDE. CDE enhancements
  1308. incorporated into the style guide include additional mouse button and
  1309. menu pulldown capabilities. Allowing cascading menus outside of the
  1310. menu bar was also added for CDE consistency. Additionally, agreement
  1311. on the common look and feel for the new ComboBox, SpinBox, and Gauge
  1312. widgets was agreed upon. Finally, there were additions to the File,
  1313. Edit, and View menus and Help menu to agree with the CDE's use of
  1314. these features. The technical draft of the style guide is scheduled to
  1315. be delivered to X/Open in mid-August 1994.
  1316.  
  1317. 4.7    Can I license the CDE source code so that I can port it?
  1318.  
  1319. As mentioned above, the CDE code is being ported to other platforms 
  1320. than the original COSE vendor's hareware.  Eventually, the CDE source 
  1321. code should be available from OSF like Motif is today, but the details 
  1322. have not been finalized.  In the mean time, the source code can be 
  1323. licensed from any of the COSE vendors directly.  However, the only 
  1324. contact I have at the moment is Sandi Jones at Novell.  Her number is 
  1325. 408.577.6369.  I was not able to get a quote for the costs in time for 
  1326. this cut of the FAQ.
  1327.  
  1328.  
  1329. ------------------------------------------------------------
  1330. Craig A. Prall,            Telephone: 703.883.6125
  1331. Member of the Technical Staff         Fax: 703.883.3315
  1332. The MITRE Corporation         Internet: cap@mitre.org
  1333. 7525 Colshire Dr. MS Z253           
  1334. McLean, VA 22102-3481
  1335.